[JavaScript] 배열 함수 filter()

목차

filter

filter() 는 배열 각 요소에 결과값이 true인 요소만을 모아서 새로운 배열을 반환하는 메서드이다. 요소들을 특정조건에 걸러지게 만드는 것이 목적이다.

filter method의 3가지 매개변수

현재요소로 쓰일 value를 제외하고 나머지는 필수입력 사항이 아니다.

  • value : 현재요소
  • index : 배열 내 현재 값의 인덱스
  • array : filter()을 호출한 배열

예시

기본형

const animals = ['rabbit','crocodile','squirrel','fox','elephant']
const animalsFilter = animals.filter(word => word.length > 6);

console.log(animalsFilter)

문자의 길이가 6 초과인 단어만 추출하도록 animals에 filter 함수를 추가하여 새로운 animalsFilter 함수를 만들었다. 해당 함수를 console.log 해보자.

['crocodile','squirrel','elephant']

문자의 길이가 6 초과인 단어만 추출되어 배열로 만들어 진 것을 볼 수 있다.

빈 배열

var arr = [4, 377, 1024];
var arrFilter = arr.filter(function (n) {
    return n % 5 == 0;
});
console.log(arrFilter);

위와같이 만족하는 요소가 없는 filter 메서드를 실행한다면

[]

빈 배열이 반환된다. 보통 도메인을 해결하기 위해서 Array 메소드를 여러개 연결하여 사용하는데 이때 만약 빈 배열이 반환되지 않는다면 에러가 날 수도 있다.



Reference


Written by@YounGyeom
Keep it fresh!

GitHubFacebook